A non-volatile memory, for example a Random Access Memory (RAM), is used as secondary storage in a computing device. The non-volatile memory typically requires high voltage to perform different operations, for example programming and erasing operations of the non-volatile memory. However, if the high voltage or the rate of change of the high voltage exceeds a maximum pre-defined value, the non-volatile memory can be damaged. Hence, there is a need for a precise time varying high voltage signal.
A charge pump is used for generating the high voltage. The charge pump uses capacitive charge storage for developing high voltage signals. Output of the charge pump needs to be controlled by a regulating circuit such that a target voltage of the charge pump is attained at a correct slew rate. The slew rate can be defined as rate of change of voltage value during which output of the charge pump varies from a higher value to a nominal value or vice-versa. The higher value can be regarded as the high voltage signal value required for various operations on the non-volatile memories. The nominal value can be regarded as the output of the charge pump on absence of an input to the charge pump. If the slew rate increases at a high pace, the non-volatile memory can be damaged, and if the slew rate decreases at a low pace, the non-volatile memory can malfunction.
In light of the forgoing discussion, there is a need for the charge pump to generate high voltage signals having discrete values.